import api from './api/api.js'
import utils from '../utils/util.js'
import constant from '../constant/constant.js'
import store from "@/store";
import {
		userInfo
	} from '@/common/api/login.js'
const cache = {
	// 存入token
	setToken: function(token) {
		uni.setStorageSync(constant.StorageName.APP_LOGIN_TOKEN, token)
	},

	// 获取token 
	getToken() {	
		return uni.getStorageSync(constant.StorageName.APP_LOGIN_TOKEN)
	},
	
	// 存入用户信息
	setUserInfo: function(userinfo) {
		uni.setStorageSync(constant.StorageName.APP_USER_INFO, JSON.stringify(userinfo))
	},
	
	// 获取用户信息
	getUserInfo() {
		return JSON.parse(uni.getStorageSync(constant.StorageName.APP_USER_INFO))
	},
	
	// 登录验证token
	isLogin: function() {
		return !utils.isNullOrEmpty(uni.getStorageSync(constant.StorageName.APP_LOGIN_TOKEN)) ? true : false
	},
	
	// 判断是否登录
	isLoginOnclick: function() {
         if(this.isLogin()){
			 return true
		 }else{ 
			 // 跳转登录页
			 uni.navigateTo({
			     url: constant.StorageName.APP_LOGIN_PATH
			 });
			 return false
		 }
	},
	
	// thorUI组件地址 
	webURL: function() {
		return "https://www.thorui.cn/wx"
	},
	
	// 用户信息更新
	updateUserInfo: function() {
		// let token = uni.getStorageSync(constant.StorageName.APP_LOGIN_TOKEN)
		let phone=uni.getStorageSync(constant.StorageName.APP_USER_INFO).phone
		if (!phone) {
			return
		}
		
		userInfo(phone).then((res) => {
			store.commit('setUserInfo', res.data)
			uni.$emit(constant.EventKey.UPDATE_USER_INFO, {
				msg: '用户信息更新'
			})
		}).catch((err) => {
			// console.log(err)
		})
	},
	
	appUser() {
		if (utils.isNullOrEmpty(uni.getStorageSync(constant.StorageName.APP_USER_INFO))) {
            return null
		}
		return JSON.parse(uni.getStorageSync(constant.StorageName.APP_USER_INFO))
	},
}



module.exports = {
	getToken: cache.getToken,
	setToken: cache.setToken,
	setUserInfo: cache.setUserInfo,
	getUserInfo: cache.getUserInfo,
	isLogin: cache.isLogin,
	webURL: cache.webURL,
	updateUserInfo: cache.updateUserInfo,
	appUser: cache.appUser,
	isLoginOnclick:cache.isLoginOnclick,
	setThemeColor:cache.setThemeColor,
	getThemeColor:cache.getThemeColor,
}
